package com.itheima.demo3;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

/*
需求：实现对图片文件进行切割

> 问题：什么是文件切割？
>
> 答案：把一个较大的文件，切割为多个小文件
>
> 在开发中，文件切割通常有两种方案：
> 1、按照文件大小切割
> 例： 107M文件， 按照10M一个文件切割
> 2、按照文件个数切割
> 例：107M文件，需要切割为10个文件
 */
public class demo3 {
    public static void main(String[] args) throws IOException {
        //存放每个图片文件完整的字节流集合
        List  <List<String[]> > list=new ArrayList<>();

        //源文件夹路径
        String source="D:\\test\\itheima-file";
     //   System.out.println("请输入进行文件分割的文件夹路径或文件历经");
        File file=new File(source);

        String[] listName = file.list();

        for (String name : listName) {
            if (name.endsWith(".JPEG")){
                //获取该图片的完整路径
                String path=source+"\\"+name;
                FileInputStream fis=new FileInputStream(path);
                //每次获取一个bit的数据
                byte[] buf=new byte[1024];
                int l = -1;
                //获取一个图片文件完整字节流的集合
                List<String[]> listT=new ArrayList<>();
                while ((l=fis.read(buf))!=-1) {
                    int readPath = l;
                    //获取1bit图片字节流的集合
                    String [] str=new String[1];
                    str[0]=readPath+"";

                    listT.add(str);

                }

                list.add(listT);
               //--------------


                for (List<String[]> string1 : list) {
                    String allPath="";
                    for (String[] string2 : string1) {
                        for (String string3 : string2) {
                            allPath+=string3;
                        }

                    }
                    System.out.println("完整的路径为： "+allPath.toString());
                    System.out.println("----");
                    //System.out.println(Arrays.toString(string1.toArray()));
                }



                //----------------
            }

        }

    }
}
